package com.sh.rbac.domain.vo.operationLog;

import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import lombok.Data;

import java.time.LocalDateTime;

/**
 * 操作日志导出视图
 *
 * @author wb
 * @since 2024-07-14
 */
@Data
public class OperationLogEeVO {

    @ExcelProperty(value = "序号", index = 0)
    private Long id;

    @ExcelProperty(value = "操作用户", index = 1)
    @ColumnWidth(15)
    private String username;

    @ExcelProperty(value = "操作部门", index = 2)
    @ColumnWidth(15)
    private String deptName;

    @ExcelProperty(value = "操作模块", index = 2)
    @ColumnWidth(25)
    private String operationModule;

    @ExcelProperty(value = "操作类型", index = 3)
    @ColumnWidth(15)
    private String operationType;

    @ExcelProperty(value = "操作方法", index = 4)
    @ColumnWidth(50)
    private String operationMethod;

    @ExcelProperty(value = "操作参数", index = 5)
    @ColumnWidth(65)
    private String operationParams;

    @ExcelProperty(value = "操作路径", index = 6)
    @ColumnWidth(30)
    private String operationUrl;

    @ExcelProperty(value = "请求方式", index = 7)
    @ColumnWidth(15)
    private String requestMethod;

    @ExcelProperty(value = "操作IP", index = 8)
    @ColumnWidth(15)
    private String operationIp;

    @ExcelProperty(value = "操作地址", index = 9)
    @ColumnWidth(20)
    private String operationAddr;

    @ExcelProperty(value = "操作时间", index = 10)
    @ColumnWidth(20)
    private LocalDateTime operationTime;

    @ExcelProperty(value = "操作状态", index = 11)
    @ColumnWidth(15)
    private String operationStatus;

    @ExcelProperty(value = "操作结果", index = 12)
    @ColumnWidth(40)
    private String operationResult;

    @ExcelProperty(value = "请求耗时", index = 13)
    @ColumnWidth(18)
    private String requestTime;

    @ExcelProperty(value = "错误信息", index = 14)
    @ColumnWidth(50)
    private String errorMsg;
}
